Computers consume electrical energy to operate. They consume electrical energy even when they are apparently idle. An idle computer may consume up to 60% of its fully active power consumption. That is wasteful. Large server farms having hundreds or even thousands of servers consume very large amount of power. The power consumed by a computer is released as heat and server rooms thus require air conditioning equipment which in turn also consume power. It is thus desirable to control the power consumption of computers especially when they are idle. It is known from for example Microsoft Windows (RTM) to provide an idle timer which reduces the power consumption of a computer if for example there has been no input activity for a set period of time.
US-A-2002/0004912 (Fung) discloses power management of computers. Fung discloses several power management schemes including: detection of a predetermined code thread; reduction of power by lowering various clock frequencies or removal of power from system components; while in power saving mode continuing to monitor the occurrence or non-occurrence of a predefined event or activity. Fung also teaches that power management can take place at different OSI levels. For example, power management may occur dependent on:- the number of CPU idle threads within a fixed time period; some statistical evaluation of CPU idleness; handling of TCP/IP packets; or the number of times a specific port address is or has been requested within a fixed time period. These events or activities may be used in combination. Different modes of power saving may be adopted. Fung also discloses a direct transition between a full power mode and an inactive mode.
US-A-2007/0283176 (Tobias et al) discloses power management of a computer to adapt the power level to the performance of the computer. Tobias measures performance using a single utilization index which is the sum of plural Task Utilization values divided by a time T which is the elapsed time between successive measurements of the index. Task Utilization is how much CPU time a task has incurred. The index is compared with high and low thresholds, and power is managed on the basis of the comparisons. Certain tasks, for example tasks below a certain level of priority, may be excluded from the index.